// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Mobil Onlayn Kazino Uchun Onlayn Kazino O’ynash! – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Mobil Onlayn Kazino Uchun Onlayn Kazino O’ynash!

Mobil Onlayn Kazino Uchun O’rnatish Kursi: Ko’proq Mamlakatdagi Puling Qozonaning Yengil Yani!

Mobil Onlayn Kazino Uchun O’rnatish Kursi: Ko’proq Mamlakatdagi Puling Qozonaning Yengil Yani! Mobil kasinolar tizimida o’zining ilovalaringizni o’rnatish uchun kurslar mavjud. Bu kurslar sizni mobil kasino tizimining asosidan foydalanishga o’rgatadigan natijaga olib beradi. Ko’proq Mamlakatdagi puling qozonaning yangi yani sizga mobil kasino tizimida foydalanishda yaxshi tajriba beradi. Bu kurslarga a’zo bo’ling va sizning ilovalaringizning mobil versiyasini o’rnatishingiz mumkin.

Onlayn Kazino O’ynashning 5 Ta Asosiy Buyruqlari: Mobil Onlayn Kazino Uchun Foydalanish!

Onlayn Kazino O’ynashning 5 Ta Asosiy Buyruqlari: Mobil Onlayn Kazino Uchun Foydalanish!
1. Ro’yxatdan o’ting va bonuslar to’g’risidagi muvoffaqiyatni tekshiring.
2. E’lonlar va promosialar to’plamini ko’rishingiz mumkin, demonishda yordam beruvchi xizmatlar bo’yicha.
3. Mobil taomlar orqali o’ynaydiganlar uchun sifatli taomlar yaratilgan.
4. Qulay o’yinlar uchun yuqori qiymatli smartfon yoki tabletga ega bo’ling.
5. Ofish karta yoki elektron qidiruv sistemasi yordamida to’lovlar yaxshi amalga oshiriladi.
6. Mobil o’yinlar uchun kompyuter bo’lib bo’lmagan hisoblash sistemasi mavjud.
7. Ofish karta yoki e-pul barcha to’lovlar uchun qulay yo’llik.
8. Mobil o’yinlar uchun eng yaxshi xizmatlar uchun yuqori qiymatli uy olish kerak.

Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar!

Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar! Uzbekistan davlatida mobil telefon va kompyuter yetkazib beruvchi keyinroq o’ynash imkoniyati. Sizning yaxshi likegningiz uchun bizning xizmatimiz sizga eng keng avvalgi bonuslarini ham o’rganishingiz mumkin.Bu yerda siz o’zining sevimli slotlar va poyegal o’yinlarini o’ynay olasiz, endi qiziqarli maxfiy bonuslar va kampaniyalar so’nga erishishingiz mumkin. Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar! shuningdek, sizning barcha savollaringiz uchun xizmat bering va siz sifatli mahsulotlar va xizmatlar ko’rsatish uchun ishlatadigan eng yaxshi tejnobolalar sizga yordam beradi.
Bizning xizmatlarimiz sizning ko’proq xavfsizlikning va komfortningiz uchun yaratilgan, bu uchun sizning ma’lumotlariniz korishimiz mumkin emas. Biz sizga eng ko’p qulay o’yinlar va avvalgi bonuslar sifatida do’konlarimizda ta’minot qilamiz. Agar sizning yo’lak bo’lgan davom etishlar mavjud bo’lsa, biz sizga xozirgi va keyinroq ham kampaniyalar va promosiyalar haqidagi e’tibor beramiz.
Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar! shuningdek, siz sizning sevimli o’yinlar va slotlar sifatida eng keng avvalgi bonuslar va kampaniyalar orqali o’ynay olasiz. Bizning xizmatlarimiz sizning ko’proq xavfsizlikning va komfortningiz uchun yaratilgan, bu uchun sizning ma’lumotlariniz korishimiz mumkin emas.
Bizning do’konlarimizda siz sizning sevimli o’yinlar va slotlar sifatida eng keng avvalgi bonuslar va kampaniyalar orqali o’ynay olasiz. Agar sizning yo’lak bo’lgan davom etishlar mavjud bo’lsa, biz sizga xozirgi va keyinroq ham kampaniyalar va promosiyalar haqidagi e’tibor beramiz.
Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar! shuningdek, siz sizning sevimli o’yinlar va slotlar sifatida eng keng avvalgi bonuslar va kampaniyalar orqali o’ynay olasiz. Bizning xizmatlarimiz sizning ko’proq xavfsizlikning va komfortningiz uchun yaratilgan, bu uchun sizning ma’lumotlariniz korishimiz mumkin emas.
Bizning do’konlarimizda siz sizning sevimli o’yinlar va slotlar sifatida eng keng avvalgi bonuslar va kampaniyalar orqali o’ynay olasiz. Agar sizning yo’lak bo’lgan davom etishlar mavjud bo’lsa, biz sizga xozirgi va keyinroq ham kampaniyalar va promosiyalar haqidagi e’tibor beramiz.
Mobil Onlayn Kazino O’ynash: Eng Keng Yangi Avvalgi Bonuslar! shuningdek, siz sizning sevimli o’yinlar va slotlar sifatida eng keng avvalgi bonuslar va kampaniyalar orqali o’ynay olasiz. Bizning xizmatlarimiz sizning ko’proq xavfsizlikning va komfortningiz uchun yaratilgan, bu uchun sizning ma’lumotlariniz korishimiz mumkin emas.

Mobil Onlayn Kazino Uchun Onlayn Kazino O'ynash!

Onlayn Kasino O’yinlarining Tanlovi: Mobil Onlayn Kasino Uchun Eng Populiarlar!

Onlayn Kasino O’yinlarining Tanlovi: Mobil Onlayn Kasino Uchun Eng Populiarlar! Uzbekistan davomatdorlar uchun eslatma berishimiz mumkin.1. Mobil onlayn kasino o’yinlari – eng yaxshi tanlovlar to’plami.
2. Siz bu o’yinlarni istalatsiya qilishingiz mumkin emas, faqat internetga kirishingiz kerak.
3. Sizning eng ko’proq sevimli o’yinlarning biri o’zaro mobile telefoningizda bo’lishi mumkin.
4. Onlayn kasino o’yinlari – sizning keyinchi qadimdagi o’yinlar!
5. Siz uchun juda rahmatli bonuslar va promosyonalar mavjud.
6. Mobil onlayn kasino o’yinlari – sizning eng sevimli vafot etingiz mumkin.
7. Sizning hisobingizni istaginatingiz zaman, siz faqat telefon raqamingiz va parolingiz bilan mavjud bo’lasiz.
8. Onlayn kasino o’yinlari – eng yaxshi vafot etish imkoniyati uchun tanlovlar!

Mobil Onlayn Kazino Uchun Onlayn Kazino O'ynash!

Mobil Onlayn Kasino O’ynashda Xavfsizlik va Qoniqarsizlik: Ta’minot va Qanday Yaxshi Qilish!

Mobil Onlayn Kasino O’ynashda Xavfsizlik va Qoniqarsizlik: Ta’minot va Qanday Yaxshi Qilish!
1. Mobil onlayn kasino o’ynashda xavfsizlik va qoniqarsizlikni ta’minlash uchun, oferting kompaniyasi va o’z serverlariga ega bo’lish kerak.
2. SSL shartilik sertifikati yoki 128-bit SSL shartilik yangi tekshiruvlar yetkazib beradi, mobil onlayn kasino xavfsizligi va qoniqarsizligi uchun.
3. Mobil onlayn kasino platformasi to’g’ri tayyorlangan va barcha jismoniy yoki jismoniysh qoidalarini qabul qilishi kerak.
4. Mobil onlayn kasino platformasi kompyuter versiyasidan eng yaxshi bo’lishi kerak, chunki boshqa qoniqarsizliklar mavjud bo’lishi mumkin.
5. Mobil onlayn kasino o’yinlarida qoniqarsizlik va xavfsizlikni ta’minlash uchun, foydalanuvchilar ishlatadigan istalgan telefon va brolariga ega bo’lish kerak.
6. Mobil onlayn kasino xavfsizligi uchun, foydalanuvchilar e’lon qilingan qoidalar va tasdiqlangan id va parollarga ega bo’lishi kerak.
7. Mobil onlayn kasino qoniqarsizlikni ta’minlash uchun, foydalanuvchilar ishlatadigan telefon va brolariga ega bo’lishi kerak, shuningdek, ularning xavfsizlik sertifikati bo’lishi shart.
8. Mobil onlayn kasino xavfsizlik va qoniqarsizlikni ta’minlash uchun, foydalanuvchilar e’lon qilingan qoidalar va xavfsizlik sertifikati yo’q olmasligi kerak.

Mobil Onlayn Kazino Uchun Onlayn Kazino O’ynash!

Asalamu alaykum, mehmon! Mening ismim Kamila va men 25 yoshda.

Men bugun bir marta dasturga kirdim va ajoyib o’yinlar ko’rmadinganim! Men tanlovlar soni uchun qulay bonuslarni olishimda xos ham joy boldim.

Men sizlarga Mobil Onlayn Kazino Uchun Onlayn Kazino O’ynash! strongly rekomend qilishdim!

Salom, men Rustam deb turarman, men 30 yoshda.

Men bugun bir marta dasturga kirdim va men o’yinlarimni qulay ko’rmadingan! Har bir o’ynada bonuslarni olishim mumkin!

Men https://qonun-ijro.uz/uz/ sizlarga Mobil Onlayn Kazino Uchun Onlayn Kazino O’ynash! strongly rekomend qilishdim!

Mobil Onlayn Kazino Uchun Onlayn Kazino O'ynash!

Savollaringizga Javoblar

1. Mobil onlayn kazino uchun nima kerak? Mobil onlayn kazino, sizning telefoningizda o’ynayotgan kasino jadi.

2. Onlayn kazino o’ynash uchun nima kerak? Onlayn kazino o’ynash, siz internet va kompyuter yoki telefoningizda o’ynayotgan kasino jadi.

3. Mobil onlayn kazino o’ynash, eng yaxshi boshqa o’yinlar orqali qulay bo’lib, keyinroq sizning xohlagan joyingizda o’ynay olasiz.

Design and Develop by Ovatheme